﻿using System;

namespace InDepth2Demo.Chapter3
{
    internal class InheritInterfaceDemo_41
    {
        static A<int> GetIntA()
        {
            throw new NotImplementedException();
        }

        static void Call()
        {
            A aClass = GetIntA();
            Console.WriteLine(aClass.Current);
        }
    }

    interface A
    {
        object Current { get; }
    }

    interface A<T> : A
    {
        new T Current { get; }
    }

    class B : A<int>
    {
        public int Current => throw new NotImplementedException();

        object A.Current => throw new NotImplementedException();
    }
}
